Method for sharing information on conditional action and electronic device therefor

ABSTRACT

The disclosure relates to sharing of information regarding a conditional action in an electronic device. The device includes a communication module for processing a signal for communication with other devices, and a processor. Herein, the at least one processor receives a ruleset including information regarding at least one conditional action from another electronic device via the communication module, and executes the ruleset. The ruleset may include at least one ruleset of which a permission for at least one of reading, modification, and deletion is limited.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a 371 National Stage of International ApplicationNo. PCT/KR2017/012569, filed Nov. 8, 2017, which claims priority toKorean Patent Application No. 10-2016-0162767, filed Dec. 1, 2016, thedisclosures of which are herein incorporated by reference in theirentirety.

BACKGROUND 1. Field

Various embodiments of the disclosure relate to a method for sharinginformation for a conditional action, and an electronic device thereof.

2. Description of Related Art

With the gradual performance increase in a portable electronic devicesuch as a smart phone, various services are being provided through theelectronic device. Specifically, in addition to a basic service such asphone calls, text messaging, or the like, a service area is expanding tomore complex services such as games, messengers, document editing,image/video playback and editing, or the like.

Further, in addition to services defined by designers of electronicdevices and applications, there is a service being developed to providefunctions defined by users. For example, a service in which a specificfunction or operation is executed conditionally is presented by giving aspecific condition to a function provided in the electronic device.

SUMMARY

Various embodiments of the disclosure provide a method for providinginformation regarding a more improved conditional action, and anelectronic device thereof.

Various embodiments of the disclosure provide a method for providinginformation regarding conditional actions defined consecutively, and anelectronic device thereof.

Various embodiments of the disclosure provide a method for protectingcreator's rights for a conditional action, and an electronic devicethereof.

Various embodiments of the disclosure provide a method for improving anadvertising effect for a conditional action, and an electronic devicethereof.

Various embodiments of the disclosure provide a method for sharinginformation regarding a conditional action having a limited permission,and an electronic device thereof.

Various embodiments of the disclosure provide a method for generating aruleset including a conditional action having a limited permission, andan electronic device thereof.

Various embodiments of the disclosure provide a method for changing apermission for a conditional action, and an electronic device thereof.

Various embodiments of the disclosure provide a method for executing aconditional action associated with a plurality of devices, and anelectronic device thereof.

According to various embodiments of the disclosure, an electronic deviceincludes a communication module for processing a signal forcommunication with other devices, and a processor. Herein, the at leastone processor receives a ruleset including information regarding atleast one conditional action from another electronic device via thecommunication module, and executes the ruleset. The ruleset may includeat least one ruleset of which a permission for at least one of reading,modification, and deletion is limited.

According to various embodiments of the disclosure, an electronic deviceincludes a communication module for processing a signal forcommunication with other devices, and a processor. Herein, the at leastone processor transmits a ruleset including information regarding atleast one conditional action via the communication module. The rulesetmay include at least one ruleset of which a permission for at least oneof reading, modification, and deletion is limited.

According to various embodiments of the disclosure, a method ofoperating an electronic device includes transmitting a request for aruleset including information regarding at least one conditional action,receiving the ruleset, and executing the ruleset. The ruleset mayinclude at least one ruleset of which a permission for at least one ofreading, modification, and deletion is limited.

A method and electronic device thereof according to various embodimentscan share and execute a ruleset including at least one action or rulesethaving a limited permission for at least one of reading, modification,and deletion, thereby protecting creator's rights and providing anadvertising effect.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an electronic device in a network environmentaccording to various embodiments of the disclosure;

FIG. 2 illustrates a block diagram of an electronic device according tovarious embodiments of the disclosure;

FIG. 3 illustrates a block diagram of a program module according tovarious embodiments of the disclosure;

FIG. 4 illustrates a functional structure of an electronic deviceaccording to various embodiments of the disclosure;

FIG. 5A and FIG. 5B illustrate an example of conditional actionsexecuted in an electronic device according to various embodiments of thedisclosure;

FIG. 6 illustrates a functional structure of a server according tovarious embodiments of the disclosure;

FIG. 7 is a flowchart for an operation of an electronic device forgenerating a ruleset according to various embodiments of the disclosure;

FIG. 8 is a flowchart for an operation of a server for managing aruleset according to various embodiments of the disclosure;

FIG. 9 is a flowchart for an operation of an electronic device whichuses a ruleset according to various embodiments of the disclosure;

FIG. 10 is a flowchart for generating a ruleset in an electronic deviceaccording to various embodiments of the disclosure;

FIG. 11 is a flowchart for executing a ruleset and changing a permissionin an electronic device according to various embodiments of thedisclosure;

FIG. 12A illustrates a signal flow for a permission change according tovarious embodiments of the disclosure;

FIG. 12B illustrates an example of screens which request for apermission change in an electronic device according to variousembodiments of the disclosure;

FIG. 12C illustrates an example of screens which inquire whether toaccept a permission change in an electronic device according to variousembodiments of the disclosure;

FIG. 12D illustrates an example of a screen which reports a result of apermission change in an electronic device according to variousembodiments of the disclosure;

FIG. 13A illustrates a signal exchange for executing a rulesetassociated with a plurality of devices according to various embodimentsof the disclosure;

FIGS. 13B and 13C illustrate example rulesets associated with aplurality of devices according to various embodiments of the disclosure;

FIG. 14A illustrates a signal exchange for controlling consecutiveactions based on a user's act in an electronic device according tovarious embodiments of the disclosure;

FIG. 14B illustrates an example of rulesets associated with a user's actaccording to various embodiments of the disclosure;

FIG. 15A is a flowchart for controlling an action based on whether adevice exists in a server according to various embodiments of thedisclosure;

FIG. 15B illustrates an example of an environment where all devicesrequired to execute a ruleset is present according to variousembodiments of the disclosure;

FIG. 15C illustrates an example of an environment where some devicesrequired to execute a ruleset are not present according to variousembodiments of the disclosure;

FIG. 16 is a flowchart for requesting and downloading a ruleset betweenelectronic devices according to various embodiments of the disclosure;and

FIG. 17 illustrates another signal exchange for executing a rulesetassociated with a plurality of devices according to various embodimentsof the disclosure.

DETAILED DESCRIPTION

Hereinafter, various example embodiments of the present disclosure willbe described with reference to the accompanying drawings. Embodimentsand terms used to describe the embodiments should be understood thatthere is no intent to limit the present disclosure to the particularforms disclosed herein; rather, the present disclosure should beunderstood to cover various modifications, equivalents, and/oralternatives of embodiments of the embodiments. In describing thedrawings, similar reference numerals may be used to designate similarconstituent elements. The singular expression may include pluralexpressions, unless the context clearly dictates otherwise. In thepresent disclosure, the expression “A or B”, “at least one of A or/andB”, or “one or more of A or/and B” may include all possible combinationsof the items listed. The expression “a first”, “a second”, “the first”,or “the second” used in various embodiments of the present disclosuremay modify various components regardless of the order and/or theimportance but does not limit the corresponding components. It should beunderstood that when an element (e.g., first element) is referred to asbeing (operatively or communicatively) “connected,” or “coupled,” toanother element (e.g., second element), it may be directly connected orcoupled directly to the other element or any other element (e.g., thirdelement) may be interposed between them. In contrast, it may beunderstood that when an element (e.g., first element) is referred to asbeing “directly connected,” or “directly coupled” to another element(second element), there are no element (e.g., third element) interposedbetween them.

The expression “configured to” used in the present disclosure may beused interchangeably with, for example, “suitable for”, “having thecapacity to”, “designed to”, “adapted to”, “made to”, or “capable of”hardware or software according to the situation. In some situations, theexpression “device configured to” may refer to a situation in which thatthe device, together with other devices or components, “is able to”. Forexample, the phrase “processor adapted (or configured) to perform A, B,and C” may refer, for example, to a dedicated processor (e.g. embeddedprocessor) only for performing the corresponding operations or ageneric-purpose processor (e.g., central processing unit (CPU) orapplication processor (AP)) that can perform the correspondingoperations by executing one or more software programs stored in a memorydevice.

An electronic device according to various example embodiments of thepresent disclosure may include at least one of, for example, a smartphone, a tablet Personal Computer (PC), a mobile phone, a video phone,an electronic book reader (e-book reader), a desktop PC, a laptop PC, anetbook computer, a workstation, a server, a Personal Digital Assistant(PDA), a Portable Multimedia Player (PMP), a MPEG-1 audio layer-3 (MP3)player, a mobile medical device, a camera, and a wearable device, or thelike, but is not limited thereto. According to various exampleembodiments, the wearable device may include at least one of anaccessory type (e.g., a watch, a ring, a bracelet, an anklet, anecklace, a glasses, a contact lens, or a Head-Mounted Device (HMD)), afabric or clothing integrated type (e.g., an electronic clothing), abody-mounted type (e.g., a skin pad, or tattoo), and a bio-implantabletype (e.g., an implantable circuit), or the like, but is not limitedthereto. According to some example embodiments, the electronic devicemay be a home appliance. The home appliance may include at least one of,for example, a television, a Digital Video Disk (DVD) player, an audio,a refrigerator, an air conditioner, a vacuum cleaner, an oven, amicrowave oven, a washing machine, an air cleaner, a set-top box, a homeautomation control panel, a security control panel, a TV box (e.g.,Samsung HomeSync™, Apple TV™, or Google TV™), a game console (e.g.,Xbox™ and PlayStation™), an electronic dictionary, an electronic key, acamcorder, and an electronic photo frame, or the like, but is notlimited thereto.

According to another example embodiment, the electronic device mayinclude at least one of various medical devices (e.g., various portablemedical measuring devices (a blood glucose monitoring device, a heartrate monitoring device, a blood pressure measuring device, a bodytemperature measuring device, etc.), a Magnetic Resonance Angiography(MRA), a Magnetic Resonance Imaging (MRI), a Computed Tomography (CT)machine, and an ultrasonic machine), a navigation device, a GlobalPositioning System (GPS) receiver, an Event Data Recorder (EDR), aFlight Data Recorder (FDR), a Vehicle Infotainment Devices, anelectronic devices for a ship (e.g., a navigation device for a ship, anda gyro-compass), avionics, security devices, an automotive head unit, arobot for home or industry, an automatic teller's machine (ATM) inbanks, point of sales (POS) in a shop, or internet device of things(e.g., a light bulb, various sensors, electric or gas meter, a sprinklerdevice, a fire alarm, a thermostat, a streetlamp, a toaster, a sportinggoods, a hot water tank, a heater, a boiler, etc.), or the like, but isnot limited thereto. According to some example embodiments, theelectronic device may include at least one of a part of furniture or abuilding/structure, an electronic board, an electronic signaturereceiving device, a projector, and various kinds of measuringinstruments (e.g., a water meter, an electric meter, a gas meter, and aradio wave meter), or the like, but is not limited thereto. Theelectronic device according to various example embodiments of thepresent disclosure may be a combination of one or more of theaforementioned various devices. The electronic device according to someembodiments of the present disclosure may be a flexible device. Further,the electronic device according to an example embodiment of the presentdisclosure is not limited to the aforementioned devices, and may includea new electronic device (e.g., an artificial intelligence electronicdevice) according to the development of technology.

An electronic device 101 within a network environment 100, according tovarious embodiments, will be described with reference to FIG. 1. Theelectronic device 101 may include a bus 110, a processor (e.g.,including processing circuitry) 120, a memory 130, an input/outputinterface (e.g., including input/output circuitry) 150, a display 160,and a communication interface (e.g., including communication circuitry)170. According to an example embodiment of the present disclosure, theelectronic device 101 may omit at least one of the above components ormay further include other components. The bus 110 may include, forexample, a circuit which interconnects the components 110 to 170 anddelivers a communication (e.g., a control message and/or data) betweenthe components 110 to 170. The processor 120 may include variousprocessing circuitry, such as, for example, and without limitation, oneor more of a dedicated processor, a Central Processing Unit (CPU), anApplication Processor (AP), and a Communication Processor (CP). Theprocessor 120 may carry out, for example, calculation or data processingrelating to control and/or communication of at least one other componentof the electronic device 101.

The memory 130 may include a volatile memory and/or a non-volatilememory. The memory 130 may store, for example, commands or data relevantto at least one other component of the electronic device 101. Accordingto an embodiment of the present disclosure, the memory 130 may storesoftware and/or a program 140. The program 140 may include, for example,a kernel 141, middleware 143, an Application Programming Interface (API)145, and/or application programs (or “applications”) 147. At least someof the kernel 141, the middleware 143, and the API 145 may be referredto as an Operating System (OS). The kernel 141 may control or managesystem resources (e.g., the bus 110, the processor 120, or the memory130) used for performing an operation or function implemented in theother programs (e.g., the middleware 143, the API 145, or theapplication programs 147). Furthermore, the kernel 141 may provide aninterface through which the middleware 143, the API 145, or theapplication programs 147 may access the individual components of theelectronic device 101 to control or manage the system resources.

The middleware 143, for example, may serve as an intermediary forallowing the API 145 or the application programs 147 to communicate withthe kernel 141 to exchange data. Also, the middleware 143 may processone or more task requests received from the application programs 147according to priorities thereof. For example, the middleware 143 mayassign priorities for using the system resources (e.g., the bus 110, theprocessor 120, the memory 130, or the like) of the electronic device101, to at least one of the application programs 147 and may perform theone or more task requests. The API 145 is an interface through which theapplications 147 control functions provided from the kernel 141 or themiddleware 143, and may include, for example, at least one interface orfunction (e.g., instruction) for file control, window control, imageprocessing, character control, and the like. The input/output interface150, for example, may transfer commands or data input from a user oranother external device to the other element(s) of the electronic device101. Furthermore, the input/output interface 150 may output the commandsor data received from the other element(s) of the electronic device 101to the user or another external device.

Examples of the display 160 may include a Liquid Crystal Display (LCD),a Light-Emitting Diode (LED) display, an Organic Light-Emitting Diode(OLED) display, a MicroElectroMechanical Systems (MEMS) display, and anelectronic paper display, or the like, but is not limited thereto. Thedisplay 160 may display, for example, various types of contents (e.g.,text, images, videos, icons, or symbols) to users. The display 160 mayinclude a touch screen, and may receive, for example, a touch, gesture,proximity, or hovering input using an electronic pen or a user's bodypart. The communication interface 170 may include various communicationcircuitry and may establish communication, for example, between theelectronic device 101 and an external device (e.g., a first externalelectronic device 102, a second external electronic device 104, or aserver 106). For example, the communication interface 170 may beconnected to a network 162 through wireless or wired communication, andmay communicate with an external device (e.g., the second externalelectronic device 104 or the server 106). According to one embodiment ofthe disclosure, the server 106 may refer to the electronic device.

The wireless communication may include a cellular communication protocolusing at least one of, for example, Long Term Evolution (LTE),LTE-Advance (LTE-A), Code Division Multiple Access (CDMA), Wideband CDMA(WCDMA), Universal Mobile Telecommunications System (UMTS), WirelessBroadband (WiBro), and Global System for Mobile Communications (GSM).According to one embodiment of the disclosure, the wirelesscommunication may include at least one of, for example, Wi-Fi,Bluetooth, Bluetooth Low Energy (BLE), Near Field Communication (NFC),Magnetic Secure Transmission, Radio Frequency and Body Area Network(BAN). According to one embodiment of the disclosure, the wirelesscommunication may include Global Navigation Satellite System (GNSS).GNSS may include, for example, at least one of global positioning system(GPS), global navigation satellite system (Glonass), Beidou Navigationsatellite system (Beidou) or Galileo, and the European globalsatellite-based navigation system. Hereinafter, in the presentdisclosure, the “GPS” may be interchangeably used with the “GNSS”. Thewired communication may include, for example, at least one of aUniversal Serial Bus (USB), a High Definition Multimedia Interface(HDMI), Recommended Standard 232 (RS-232), power wire communication, anda Plain Old Telephone Service (POTS). The network 162 may include atleast one of a telecommunication network such as a computer network(e.g., a LAN or a WAN), the Internet, and a telephone network.

Each of the first and second external electronic devices 102 and 104 maybe of a type identical to or different from that of the electronicdevice 101. According to various example embodiments of the presentdisclosure, all or some of the operations performed in the electronicdevice 101 may be executed in another electronic device or a pluralityof electronic devices (e.g., the electronic devices 102 and 104 or theserver 106). According to an embodiment of the present disclosure, whenthe electronic device 101 has to perform some functions or servicesautomatically or in response to a request, the electronic device 101 mayrequest another device (e.g., the electronic device 102 or 104 or theserver 106) to execute at least some functions relating thereto insteadof or in addition to autonomously performing the functions or services.Another electronic device (e.g., the electronic device 102 or 104, orthe server 106) may execute the requested functions or the additionalfunctions, and may deliver a result of the execution to the electronicdevice 101. The electronic device 101 may process the received result asit is or additionally, and may provide the requested functions orservices. To this end, for example, cloud computing, distributedcomputing, or client-server computing technologies may be used.

The server 106, according to an embodiment, may be an entity whichmanages information regarding conditional actions. For example, theserver 106 may store information regarding the conditional actions andprovide upload and download services. For example, the server 106 mayprovide various functions such as uploading, sharing, downloading,editing, expiration date management, permission cancellation request,permission cancellation verification, permission cancellation approvalor rejection, or the like for the information regarding the conditionalactions. In addition, the electronic device 102 may also be a device forwhich an Internet connection is possible through a network, such as amobile device, a Personal Computer (PC), an Internet of Things (IoT)device. Further, the electronic device 102 may have access to the server106 through a site or application and write and edit a ruleset whichuses consecutive actions and triggers according to various embodiments.

FIG. 2 is a block diagram illustrating an example electronic device 201according to various example embodiments of the present disclosure. Theelectronic device 201 may include, for example, all or a part of theelectronic device 101 illustrated in FIG. 1. The electronic device 201may include one or more processors (e.g., including processingcircuitry) 210 (e.g., Application Processors (AP)), a communicationmodule (e.g., including communication circuitry) 220, a SubscriberIdentification Module (SIM) 224, a memory 230, a sensor module 240, aninput device (e.g., including input circuitry) 250, a display 260, aninterface (e.g., including interface circuitry) 270, an audio module280, a camera module (e.g., including a camera) 291, a power managementmodule 295, a battery 296, an indicator 297, and a motor 298. Theprocessor 210 may include various processing circuitry configured tocontrol a plurality of hardware or software components connected to theprocessor 210 by driving an operating system or an application program,and perform processing of various pieces of data and calculations. Theprocessor 210 may be embodied as, for example, a System on Chip (SoC).According to an embodiment of the present disclosure, the processor 210may further include a Graphic Processing Unit (GPU) and/or an imagesignal processor. The processor 210 may include at least some (forexample, a cellular module 221) of the components illustrated in FIG. 2.The processor 210 may load, into a volatile memory, commands or datareceived from at least one (e.g., a non-volatile memory) of the othercomponents and may process the loaded commands or data, and may storevarious data in a non-volatile memory.

The communication module 220 may have a configuration equal or similarto that of the communication interface 170 of FIG. 1. The communicationmodule 220 may include various communication circuitry, such as, forexample, and without limitation, a cellular module 221, a Wi-Fi module223, a BT module 225, a GNSS module 227, an NFC module 228, and a RadioFrequency (RF) module 229. The cellular module 221, for example, mayprovide a voice call, a video call, a text message service, or anInternet service through a communication network. According to anembodiment of the present disclosure, the cellular module 221 maydistinguish and authenticate the electronic device 201 in acommunication network using the subscriber identification module 224(for example, the SIM card). According to an embodiment of the presentdisclosure, the cellular module 221 may perform at least some of thefunctions that the AP 210 may provide. According to an embodiment of thepresent disclosure, the cellular module 221 may include a communicationprocessor (CP). According to an embodiment of the present disclosure, atleast some (e.g., two or more) of the Wi-Fi module 223, the BT module225, the GNSS module 227, and the NFC module 228 may be included in oneIntegrated Chip (IC) or IC package. The RF module 229, for example, maytransmit/receive a communication signal (e.g., an RF signal). The RFmodule 229 may include, for example, a transceiver, a Power AmplifierModule (PAM), a frequency filter, a Low Noise Amplifier (LNA), and anantenna. According to another embodiment of the present disclosure, atleast one of the cellular module 221, the WIFI module 223, the BT module225, the GNSS module 227, and the NFC module 228 may transmit/receive anRF signal through a separate RF module. The subscriber identificationmodule 224 may include, for example, a card including a subscriberidentity module and/or an embedded SIM, and may contain uniqueidentification information (e.g., an Integrated Circuit Card Identifier(ICCID)) or subscriber information (e.g., an International MobileSubscriber Identity (IMSI)).

The memory 230 (e.g., the memory 130) may include, for example, anembedded memory 232 and/or an external memory 234. The embedded memory232 may include at least one of a volatile memory (e.g., a DynamicRandom Access Memory (DRAM), a Static RAM (SRAM), a Synchronous DynamicRAM (SDRAM), and the like) and a non-volatile memory (e.g., a One TimeProgrammable Read Only Memory (OTPROM), a Programmable ROM (PROM), anErasable and Programmable ROM (EPROM), an Electrically Erasable andProgrammable ROM (EEPROM), a mask ROM, a flash ROM, a flash memory(e.g., a NAND flash memory or a NOR flash memory), a hard disc drive, aSolid State Drive (SSD), and the like). The external memory 234 mayfurther include a flash drive, for example, a Compact Flash (CF), aSecure Digital (SD), a Micro Secure Digital (Micro-SD), a Mini SecureDigital (Mini-SD), an eXtreme Digital (xD), a MultiMediaCard (MMC), amemory stick, or the like. The external memory 234 may be functionallyand/or physically connected to the electronic device 201 through variousinterfaces.

The sensor module 240, for example, may measure a physical quantity ordetect an operation state of the electronic device 201, and may convertthe measured or detected information into an electrical signal. Thesensor module 240 may include, for example, at least one of a gesturesensor 240A, a gyro sensor 240B, an atmospheric pressure sensor(barometer) 240C, a magnetic sensor 240D, an acceleration sensor 240E, agrip sensor 240F, a proximity sensor 240G, a color sensor 240H (e.g.,red, green, and blue (RGB) sensor), a biometric sensor (medical sensor)2401, a temperature/humidity sensor 240J, an illuminance (e.g., light)sensor 240K, and a Ultra Violet (UV) sensor 240M. Additionally oralternatively, the sensor module 240 may include, for example, an E-nosesensor, an electromyography (EMG) sensor, an electroencephalogram (EEG)sensor, an electrocardiogram (ECG) sensor, an Infrared (IR) sensor, aniris scan sensor, and/or a finger scan sensor. The sensor module 240 mayfurther include a control circuit for controlling one or more sensorsincluded therein. According to an embodiment of the present disclosure,the electronic device 201 may further include a processor configured tocontrol the sensor module 240, as a part of the processor 210 orseparately from the processor 210, and may control the sensor module 240while the processor 210 is in a sleep state.

The input device 250 may include various input circuitry, such as, forexample, and without limitation, a touch panel 252, a (digital) pensensor 254, a key 256, or an ultrasonic input device 258. The touchpanel 252 may use, for example, at least one of a capacitive type, aresistive type, an infrared type, and an ultrasonic type. The touchpanel 252 may further include a control circuit. The touch panel 252 mayfurther include a tactile layer, and provide a tactile reaction to theuser. The (digital) pen sensor 254 may include, for example, arecognition sheet which is a part of the touch panel or is separatedfrom the touch panel. The key 256 may include, for example, a physicalbutton, an optical key or a keypad. The ultrasonic input device 258 maydetect, through a microphone (e.g., the microphone 288), ultrasonicwaves generated by an input tool, and identify data corresponding to thedetected ultrasonic waves.

The display 260 (e.g., the display 160) may include a panel 262, ahologram device 264, a projector 266, and/or a control circuit tocontrol thereof. The panel 262 may be implemented to be, for example,flexible, transparent, or wearable. The panel 262 may be embodied as asingle module with the touch panel 252. The hologram device 264 may showa three dimensional (3D) image in the air by using an interference oflight. The projector 266 may project light onto a screen to display animage. The screen may be located, for example, in the interior of or onthe exterior of the electronic device 201. The interface 270 may includevarious interface circuitry, such as, for example, and withoutlimitation, a High-Definition Multimedia Interface (HDMI) 272, aUniversal Serial Bus (USB) 274, an optical interface 276, or aD-subminiature (D-sub) 278. The interface 270 may be included in, forexample, the communication interface 170 illustrated in FIG. 1.Additionally or alternatively, the interface 270 may include, forexample, a Mobile High-definition Link (MHL) interface, a Secure Digital(SD) card/Multi-Media Card (MMC) interface, or an Infrared DataAssociation (IrDA) standard interface.

The audio module 280, for example, may bilaterally convert a sound andan electrical signal. At least some components of the audio module 280may be included in, for example, the input/output interface 150illustrated in FIG. 1. The audio module 280 may process voiceinformation input or output through, for example, a speaker 282, areceiver 284, earphones 286, or the microphone 288. The camera module291 may include various circuitry including, for example, and withoutlimitation, a camera, a device which may photograph a still image and avideo, or the like. According to an embodiment of the presentdisclosure, the camera module 291 may include one or more image sensors(e.g., a front sensor or a back sensor), a lens, an Image SignalProcessor (ISP) or a flash (e.g., LED or xenon lamp). The powermanagement module 295 may manage, for example, power of the electronicdevice 201. According to an embodiment of the present disclosure, thepower management module 295 may include a Power Management IntegratedCircuit (PMIC), a charger Integrated Circuit (IC), or a battery or fuelgauge. The PMIC may use a wired and/or wireless charging method.Examples of the wireless charging method may include, for example, amagnetic resonance method, a magnetic induction method, anelectromagnetic wave method, and the like. Additional circuits (e.g., acoil loop, a resonance circuit, a rectifier, etc.) for wireless chargingmay be further included. The battery gauge may measure, for example, aresidual quantity of the battery 296, and a voltage, a current, or atemperature while charging. The battery 296 may include, for example, arechargeable battery and/or a solar battery.

The indicator 297 may display a particular state (e.g., a booting state,a message state, a charging state, or the like) of the electronic device201 or a part (e.g., the processor 210) of the electronic device 201.The motor 298 may convert an electrical signal into a mechanicalvibration, and may generate a vibration, a haptic effect, or the like.The electronic device 201 may include a mobile TV supporting device(e.g., a GPU) to process media data according to a certain standard suchas, for example, Digital Multimedia Broadcasting (DMB), Digital VideoBroadcasting (DVB), or mediaFLO™. According to various embodiments ofthe present disclosure, some of the above-described elements may beomitted from the electronic device, or the electronic device may furtherinclude additional elements, or some of the hardware componentsaccording to various embodiments may be combined into one entity, whichmay perform functions identical to those of the relevant componentsbefore the combination.

FIG. 3 is a block diagram illustrating an example program moduleaccording to various example embodiments of the present disclosure.According to an embodiment of the present disclosure, the program module310 (e.g., the program 140) may include an Operating System (OS) forcontrolling resources related to the electronic device (e.g., theelectronic device 101) and/or various applications (e.g., theapplication programs 147) executed in the operating system. Theoperating system may be, for example, Android™, iOS™, Windows™,Symbian™, Tizen™, Bada™, or the like. According to FIG. 3, the programmodule 310 may include a kernel 320 (e.g., the kernel 141), middleware330 (e.g., the middleware 143), an API 360 (e.g., the API 145), and/orapplications 370 (e.g., the applications 147). At least some of theprogram module 310 may be preloaded on an electronic device, or may bedownloaded from an external electronic device (e.g., the electronicdevice 102 or 104, or the server 106).

The kernel 320 may include, for example, a system resource manager 321and/or a device driver 323. The system resource manager 321 may control,allocate, or collect system resources. According to an embodiment of thepresent disclosure, the system resource manager 321 may include aprocess management unit, a memory management unit, a file systemmanagement unit, and the like. The device driver 323 may include, forexample, a display driver, a camera driver, a Bluetooth driver, a sharedmemory driver, a USB driver, a keypad driver, a Wi-Fi driver, an audiodriver, or an Inter-Process Communication (IPC) driver. For example, themiddleware 330 may provide a function required in common by theapplications 370, or may provide various functions to the applications370 through the API 360 so as to enable the applications 370 toefficiently use the limited system resources in the electronic device.According to an example embodiment of the present disclosure, themiddleware 330 (e.g., the middleware 143) may include at least one of arun time library 335, an application manager 341, a window manager 342,a multimedia manager 343, a resource manager 344, a power manager 345, adatabase manager 346, a package manager 347, a connectivity manager 348,a notification manager 349, a location manager 350, a graphic manager351, and a security manager 352.

The runtime library 335 may include a library module that a compileruses in order to add a new function through a programming language whilean application 370 is being executed. The runtime library 335 mayperform input/output management, memory management, the functionalityfor an arithmetic function, or the like. The application manager 341 maymanage, for example, a life cycle of at least one of the applications370. The window manager 342 may manage Graphical User Interface (GUI)resources used by a screen. The multimedia manager 343 may recognize aformat required for reproduction of various media files, and may performencoding or decoding of a media file by using a codec suitable for thecorresponding format. The resource manager 344 may manage resources of asource code or a storage space of the memory. The power manager 345 maymanage, for example, a battery or power source and may provide powerinformation or the like required for the operations of the electronicdevice. According to an embodiment of the present disclosure, the powermanager 345 may operate together with, for example, a Basic Input/OutputSystem (BIOS). The database manager 346 may generate, search for, and/orchange a database to be used by at least one of the applications 370.The package manager 347 may manage installation or an update of anapplication distributed in a form of a package file.

For example, the connectivity manager 348 may manage wirelessconnectivity such as Wi-Fi or Bluetooth. The notification manager 349may display or notify of an event such as an arrival message, promise,proximity notification, and the like in such a way that does not disturba user. The location manager 350 may manage location information of anelectronic device. The graphic manager 351 may manage a graphic effectwhich will be provided to a user, or a user interface related to thegraphic effect. The security manager 352 may provide, for example,system security or user authentication. According to an embodiment ofthe present disclosure, the middleware 330 may further include atelephony manager for managing a voice call function or a video callfunction of the electronic device or a middleware module that forms acombination of various functions of the above-described components.According to one embodiment of the present disclosure, the middleware330 may provide a module specialized for each type of OS in order toprovide a differentiated function. Further, the middleware 330 maydynamically remove some of the existing components or add newcomponents. The API 360 (e.g., the API 145) is, for example, a set ofAPI programming functions, and may be provided with a differentconfiguration according to an OS. For example, in the case of Android™or iOS™, one API set may be provided for each platform. In the case ofTizen™, two or more API sets may be provided for each platform.

The application 370 may include, for example, a home 371, a dialer 372,a Short Message Service (SMS)/Multimedia Messaging Service (MMS) 373, anInstant Message (IM) 374, a browser 375, a camera 376, an alarm 377, acontact 378, a voice dial 379, an e-mail 380, a calendar 381, a mediaplayer 382, an album 383, a watch 384, a ruleset management 385, ahealth care (e.g., an application for measuring a physical activitylevel, a blood sugar level, etc.), or an application for providingenvironment information (e.g., providing atmospheric pressure, humidity,or temperature information). Herein, the ruleset management 385 may bean application capable of writing, editing, and storing a ruleset of theconsecutive actions and events, and may be an application which providesan environment capable of using this. According to an embodiment, theapplication 370 may include an information exchanging applicationcapable of supporting information exchange between the electronic deviceand an external electronic device. The information exchange applicationmay include, for example, a notification relay application for relayingspecific information to the external electronic device or a devicemanagement application for managing the external electronic device. Forexample, the notification relay application may relay notificationinformation generated in another application of the electronic device tothe external electronic device, or may receive notification informationfrom the external electronic device and may provide it to the user. Thedevice management application may install, delete, or update a function(e.g., turning on/turning off the external electronic device itself (orsome components thereof) or adjusting a display illumination (or aresolution)) of an external electronic device which communicates withthe electronic device, or an application which operates in the externalelectronic device. According to an embodiment, the application 370 mayinclude an application specified according to an attribute of theexternal electronic device (e.g., a health management application of amobile medical device). According to an embodiment, the application 370may include an application received from the external electronic device.At least part of the program module 310 may be implemented (e.g.,executed) in software, firmware, hardware (e.g., the processor 210), orat least two or more of combinations thereof, and may include modules,programs, routines, sets of instructions, or processes for performingone or more functions.

Hereinafter, various embodiments for executing and managing aconditional action will be described. Terms used in the followingdescription are defined as follows.

A ‘ruleset’ may imply information indicating content of an actionperformed by the electronic device 101 and a condition for triggeringthe action. That is, the ruleset may be a set of one or more conditionalactions. Herein, the action may be defined as a condition of anotheraction. That is, the ruleset according to various embodiments mayinclude a definition of consecutive actions. The ruleset may be referredto as ‘information regarding a conditional action’, ‘a condition andaction set’, ‘a trigger and action set’, ‘action information’, ‘recipe’,or other terms having the same technical meaning.

A ‘condition’ may imply an event which must be precedent to execute anaction in the electronic device 101. The condition may be defined as aninternal change, an external change, or a combination of them. Invarious embodiments, the condition may be a target of modification,deletion, and addition. The condition may be referred to as a ‘triggerevent’, a ‘trigger’, an ‘event’, or any other terms having the sametechnical meaning.

An ‘action’ may imply at least one function executed in the electronicdevice 101. The action may be initiated under a condition defined by theruleset. Content of the ruleset may be defined as a specific function ofa specific application or data used in the specific function. In variousembodiments, the action may be a target of modification, deletion, andaddition. The action may be referred to as an ‘operation’, a ‘function’,‘processing’, a ‘computation’, or other terms having the same technicalmeaning.

A ‘connector service’ may imply a service for which at least oneconditional action is executed according to a ruleset. In addition, theconnector service may provide functions for managing the ruleset, suchas storing, modifying, executing, or the like of the ruleset. Theconnector service may be referred to as a ‘ruleset service’, a‘conditional action service’, or other terms having the same technicalmeaning.

The conventional connector service is not optimized to consecutiveenvironments (e.g., an IoT environment, a healthcare platform, etc.)which are increasingly complex and diverse because of a structure inwhich one or multiple actions are executed simultaneously due to onetrigger event, i.e., one condition. In addition, in the case of theconventional connector service, since rights protection and advertisingeffect of a creator who generates a ruleset including an event and anaction are insignificant, there is a limitation in leading participationof third party developers and ruleset creators.

Accordingly, various embodiments of the disclosure provide an improvedconnector service capable of configuring a permission to disablemodification or deletion for at least part of conditions or actionsincluded in the ruleset. Therefore, the rights protection andadvertising effect of the ruleset creator can be improved. In addition,reliability can be improved in the use of the ruleset by disablingmodification for a sensitive action directly associated with life andsecurity.

FIG. 4 illustrates a functional structure of an electronic deviceaccording to various embodiments of the disclosure. A structure of theelectronic device 101 or the electronic device 102 is illustrated inFIG. 4. The structure of FIG. 4 may be understood as the structure ofthe electronic device 101 or electronic device 102.

Referring to FIG. 4, the electronic device 101 or the electronic device102 may include a display 410, a communication module 420, a memory 430,and a processor 440.

The display 410 may be a component for displaying a screen of theelectronic device 101. For example, the display 410 may be constructedof at least one of an OLED, a Quantum-dot Light Emitting Diode (QLED),and an LCD. The display 410 may be a component corresponding to thedisplay 160 of FIG. 1 or the display 260 of FIG. 2.

The communication module 420 may perform functions for communicatingwith other devices. The communication module 420 may provide aninterface through which the electronic device 101 or the electronicdevice 102 performs communication through a wired channel or a wirelesschannel. For example, the communication module 420 may performconversion between data and a physical signal. The communication module420 may be a component corresponding to the communication interface 170of FIG. 1 or the communication module 220 of FIG. 2.

The memory 430 may store data such as a basic program, applicationprogram, configuration information, or the like for an operation of theelectronic device 101 or the electronic device 102. The memory 430 maybe constructed of a volatile memory, a non-volatile memory, or acombination of the volatile memory and the non-volatile memory. Inaddition, the memory 430 may provide the stored data according to arequest of the processor 440. The memory 430 may be a componentcorresponding to the memory 130 of FIG. 1 or the memory 230 of FIG. 2.

The processor 440 may control overall operations of the electronicdevice 101 or electronic device 102. For example, the processor 440 maycontrol screen displaying of the display 410, and may control signalprocessing of the communication module 420. In addition, the processor440 may read or write data in the memory 430, and may execute anapplication, code, or the like stored in the memory 430. For example,the processor 440 may control the electronic device 101 or theelectronic device 102 to perform an operation according to variousembodiments described below. The processor 440 may be a componentcorresponding to the processor 120 of FIG. 1 or the processor 210 ofFIG. 2.

According to various embodiments, the processor 440 may include aruleset execution module 442 to execute a ruleset. The ruleset executionmodule 442 may have a permission to control functions of otherapplications to execute the ruleset. In this case, the ruleset executedby the ruleset execution module 442 may have the same structure as shownin FIG. 5A or FIG. 5B. Referring to FIG. 5A, a trigger 501 may bedefined, and an action and trigger 503 corresponding to the trigger 501may be defined. The action and trigger 503 may include an action, andmay be used as a trigger for another action at the same time. That is, aplurality of actions may be defined consecutively, and an action 505which does not operate as at least one trigger may be defined. Referringto FIG. 5B, a first sub-ruleset 511 may include at least one trigger, atleast one action and trigger, and at least one action. In this case, thefirst sub-ruleset 511 may be used as a trigger of another secondsub-ruleset 513. Similarly to FIG. 5A, the plurality of sub-rulesets511, 513, and 515 may be defined consecutively. However, unlike in FIG.5A, the ruleset of FIG. 5B is a set of the plurality of sub-rulesets511, 513, and 515, and some rulesets (e.g., the first sub-ruleset 511,the second sub-ruleset 513) may function as a trigger. In the executingof the ruleset as described above, the ruleset execution module 442 mayexecute the ruleset stored in the memory 430, or may execute the rulesetthrough interaction with an external server (e.g., the server 106)having the ruleset.

According to various embodiments, the processor 440 may include aruleset management module 444 to manage the ruleset. The rulesetmanagement module 444 may provide a function such as ruleset generation,modification, permission configuration, deletion, or the like. Forexample, in case of the ruleset generation, the ruleset managementmodule 444 may provide functions such as action generation, triggergeneration, or permission configuration for the action or the trigger,uploading to an external service, processing for a permission changerequest, or the like. For another example, in case of using the ruleset,the ruleset management module 444 may provide functions such asdownloading of the ruleset, deleting or modifying an action or triggerincluded in the ruleset, changing of a permission for the action ortrigger included in the ruleset, or the like.

The ruleset execution module 442 and the ruleset management module 444may be an instruction or the like resided at least temporarily in theprocessor 440 or a storage space for storing the instruction or thelike, as an application, instruction set, or execution code stored inthe memory 430. Alternatively, the ruleset execution module 442 and theruleset management module 444 may be part of a circuitry constitutingthe processor 440. The processor 440 may perform functions related tothe ruleset according to various embodiments via the ruleset executionmodule 442 and the ruleset management module 444.

FIG. 6 illustrates a functional structure of a server according tovarious embodiments of the disclosure. A structure of the server 106 isexemplified in FIG. 6.

Referring to FIG. 6, the server 106 may include a communication module610, a memory 620 (e.g., the memory 130, the memory 230), and aprocessor 630 (e.g., the processor 120, the processor 210).

The communication module 610 may perform functions for communicatingwith other devices. The communication module 610 may provide aninterface through which the server 106 performs communication through awired channel or a wireless channel. For example, the communicationmodule 610 may perform conversion between data and a physical signal.

The memory 620 may store data such as a basic program, applicationprogram, configuration information, or the like for an operation of theserver 106. The memory 620 may be constructed of a volatile memory, anon-volatile memory, or a combination of the volatile memory and thenon-volatile memory. In addition, the memory 620 may provide the storeddata according to a request of the processor 630. According to variousembodiments, the memory 620 may store at least one of permissioninformation, ruleset information, action information, and userinformation. The permission information may include informationregarding a permission configured for an action or trigger. Theinformation regarding the permission may include at least one of alimitation item (e.g., modification, deletion), a limitation duration,and a limitation cancelation duration. Ruleset information may includeinformation regarding mapping for at least one trigger and at least oneaction. For example, the ruleset information may indicate a mappingrelation in pair of a trigger index and an action index. The actioninformation may include information regarding actions and triggersavailable to define the ruleset. In the action information, each of theactions and triggers may have a unique index. User information may haveaccount information of users subscribed to a service for sharing theruleset. In this case, the account information may include at least oneof identification information of a corresponding user and informationregarding devices constituting an internal network of the correspondinguser.

The processor 630 may control operations of the server 106. For example,the processor 630 may control signal processing of the communicationmodule 610. In addition, the processor 630 may read or write data in thememory 620, and may execute an application, code, or the like stored inthe memory 620. For example, the processor 630 may control the server106 to perform an operation according to various embodiments describedbelow.

According to various embodiments, the processor 630 may include apermission duration management module 632 to control a duration relatedto a permission. The permission duration management module 632 maydelete, generate, or modify ruleset information and thepermission-related duration included in the permission information. Forthis, the permission duration management module 632 may have access tothe ruleset information and permission information stored in the memory620.

According to various embodiments, the processor 630 may include aruleset-action mapping module 634 to manage information on the ruleset.The ruleset-action mapping module 634 may manage mapping informationbetween at least one trigger and at least one action which define theruleset. For this, the ruleset-action mapping module 634 may have accessto the permission information, action information, and rulesetinformation stored in the memory 620.

According to various embodiments, the processor 630 may include anaction permission management module 636 to control an action-relatedpermission. The action permission management module 636 may delete,generate, or modify a permission for each of actions or triggers. Forthis, the action permission management module 636 may have access topermission information, action information, and user information storedin the memory 620.

According to various embodiments, the processor 630 may include a usermanagement module 638 to manage information regarding a user. The usermanagement module 638 may store user information when a user isregistered, and may update or delete user information according to arequest or the like. For this, the user management module 638 may haveaccess to permission information and user information stored in thememory 620.

Hereinafter, various embodiments for generating, sharing, using,permission changing, or the like of a ruleset will be described. Forconvenience of explanation, as a device of using the ruleset, the‘electronic device 102’ is exemplified as a device for generating theruleset, and the ‘server 106’ is exemplified as a device for providing afunction for sharing.

According to various embodiments of the disclosure, the electronicdevice 101 may download and use a ruleset generated by another device(e.g., the electronic device 102 or the electronic device 104). In thiscase, a permission for the ruleset, the action, the trigger, or the likemay be configured, and the ruleset may be managed as follows accordingto content of the configured permission.

In an embodiment, upon generating the ruleset including the trigger andthe action, the electronic device 102 may exclude modification anddeletion permissions for any action. Therefore, a creation of a rulesetcreator can be protected, and is prevented from being modified randomly,thereby having an advertising effect for the creator. Since the rulesetincluding the action excluding the modification and deletion permissionsis shared via the server 106, the electronic device 101 may download theruleset from the server 106 and may execute it. The electronic device101 may perform management, such as reading, modification, deletion, orthe like, for any action included in the ruleset. However, when theelectronic device 102 corresponds to an action excluding themodification and deletion permissions, the electronic device 101 mayperform only reading. Therefore, in order to adapt to a unique operatingenvironment of the electronic device 101, the electronic device 101 mayrequest the electronic device 102 to change the permission, and may useit after performing optimization for the operating environment or maydownload another ruleset according to the operating environment.

In another embodiment, upon generating the ruleset including the triggerand the action, the electronic device 102 may exclude the modificationpermission for any action. Therefore, it is possible to prevent asituation where security cannot be guaranteed or copyright is violatedby randomly modifying an action sensitive to the security and thecopyright. The ruleset including the action excluding the modificationpermission may be shared via the server 106, and the electronic device101 may download and execute the ruleset. The electronic device 101 canread and delete the action excluding the modification permission, butcannot modify it. To modify the action, the electronic device 101 mayrequest the electronic device 102 to change the permission.

In another embodiment, upon generating the ruleset including the triggerand the action, the electronic device 102 may exclude the reading andmodification permissions for any action. Therefore, in case of includingan action sensitive to copyright and rights protection, a copyrightowner and a rights holder can be protected. The ruleset excluding thereading and modification permissions may be shared via the server 106,and the electronic device 101 may download and execute the ruleset. Theelectronic device 101 may perform only detection of a correspondingaction of which reading and modification are prohibited, and may requestthe electronic device 102 to change the reading and modificationpermissions.

In another embodiment, upon generating the ruleset including the triggerand the action, the electronic device 102 may exclude all of thereading, modification, and deletion permissions for any action.Therefore, reading is not supported for an action which may have asecurity issue, and all of reading, modification, and deletion may beimpossible for a user who does not acquire an approval. A rulesetincluding an action excluding all permissions may be shared via theserver 106, and the electronic device 101 may download and execute theruleset. The electronic device 101 cannot use any function of acorresponding action, and may request the electronic device 102 tochange the reading, modification, and deletion permissions.

In another embodiment, upon generating the ruleset including the triggerand the action, the electronic device 102 may be configured such thatany action is automatically deleted after a duration of validity.Therefore, in case of an action sensitive to copyright and rightsprotection, a usage thereof may be approved only during a specificduration. The electronic device 101 may read, modify, and delete acorresponding action only during the duration of validity, and theaction may be automatically deleted when the duration of validityexpires. In addition, the electronic device 102 may receive informationindicating that any action of which a duration of validity is determinedin the electronic device 101 is deleted from the server 106.

In another embodiment, upon generating the ruleset including the triggerand the action, the electronic device 102 may enable the reading andmodification for any action after the duration of validity. Therefore,an act based on a specific action may be configurable if it disappearsafter a specific duration elapses. The ruleset including an actionconfigured such that reading and modification are possible after theduration of validity may be shared with the server 106, and theelectronic device 101 may download and execute the ruleset. Theelectronic device 101 cannot perform reading and modification during theduration of validity. When the duration of validity expires, theelectronic device 101 may read and modify a corresponding action. Inaddition, the electronic device 102 may receive information indicatingthat there is a change in a permission configuration of a correspondingaction of a corresponding ruleset from the server 106.

FIG. 7 is a flowchart for an operation of an electronic device forgenerating a ruleset according to various embodiments of the disclosure.A method of operating the electronic device 102 is exemplified in FIG.7.

Referring to FIG. 7, in operation 701, the electronic device 102 maygenerate a ruleset and configure a permission. The electronic device 102is a device used by a creator of the ruleset, and the electronic device102 generates the ruleset by mapping at least one trigger and at leastone action according to an input of the creator. In addition, theelectronic device 102 may configure a permission (e.g., a limitation formodification, a limitation for deletion) for at least one trigger and atleast one action according to the input of the creator.

In operation 703, the electronic device 102 may update the ruleset. Inother words, the electronic device 102 may have access to the server 106and transmit the ruleset to the server 106 according to the input of thecreator. In this case, the ruleset may be uploaded to be shared withanother electronic device (e.g., the electronic device 101). Herein, theruleset may include at least one trigger and at least one action ofwhich a permission is limited.

In operation 705, the electronic device 102 may verify whether a requestfor a permission change is received. The request for the permissionchange may be received from the server 106, and may be initiated fromanother electronic device (e.g., the electronic device 101). Herein, therequest for the permission change may include at least one ofidentification information regarding an action or trigger which is atarget of modification, content (e.g., modification, deletion, or thelike) of a permission to be acquired, and identification information ofa requester.

Upon receiving the request for the permission change, in operation 707,the electronic device 102 may display a screen for inquiry and mayidentify selection of the creator. That is, in order to verify anintention of the creator for the permission change, the electronicdevice may display a screen which requests for the selection of theuser. The screen may include information regarding a permission to beacquired by a request target and a requester and an interface component(e.g., a button) for detecting the selection of the creator.

In operation 709, the electronic device 102 may transmit a selectionrequest. That is, the electronic device 102 may identify whether thepermission change of the creator is approved, and may report anidentification result to the server 106. In addition, the electronicdevice 102 may store the selection result.

FIG. 8 is a flowchart for an operation of a server for managing aruleset according to various embodiments of the disclosure. A method ofoperating the server 106 is exemplified in FIG. 8.

Referring to FIG. 8, in operation 801, the server 106 may receive aruleset and store the ruleset. In other words, the server 106 may storethe ruleset uploaded from an electronic device (e.g., the electronicdevice 102) of a creator. Since the ruleset is stored to be shared, theserver 106 may release information regarding the ruleset through amedium (e.g., a webpage, etc.) accessible from the outside. Accordingly,another device (e.g., the electronic device 101) may verify the rulesetstored in the server 106.

In operation 803, the server 106 may verify whether a request for theruleset is received. The request for the ruleset may includeidentification information regarding the ruleset. For example, anotherdevice (e.g., the electronic device 101) may transmit a message fordownloading the ruleset to the server 106 by identifying the rulesetstored in the server 106. The server 106 may receive the request for theruleset, i.e., a sharing request.

Upon receiving the request for the ruleset, in operation 805, the server106 may perform a procedure for sharing the ruleset. Specifically, theserver 106 may verify the requested ruleset and identify data of aruleset requested in the memory 620, and thereafter may packetize dataand transmit it to the requester (e.g., the electronic device 101). Inaddition, the server 106 may store a log for downloading of the rulesetinto user information or ruleset information.

Thereafter, in operation 807, the server 106 may verify whether arequest for a permission change is received. The request for thepermission change may be received from a device (e.g., the electronicdevice 101) which has downloaded the ruleset. The request for thepermission change may include information regarding a target ruleset,information regarding a target action or trigger, content of apermission for modification, or the like.

Upon receiving the request for the permission change, in operation 809,the server 106 may perform a procedure for the permission change.Specifically, the server 106 may transmit a message for verifying anintention of a creator to a device (e.g., the electronic device 102) ofthe creator, and may verify a response for the intention verificationfrom the device of the creator. If there is an approval of the creator,the server 106 may change a permission of a corresponding action ortrigger according to an intention of a user who has requested for thepermission change. The permission may be modified by at least one ofupdating of the permission information and issuing of a token.

FIG. 9 is a flowchart for an operation of an electronic device whichuses a ruleset according to various embodiments of the disclosure. Amethod of operating the electronic device 101 is exemplified in FIG. 9.

Referring to FIG. 9, in operation 901, the electronic device 101 maydownload a ruleset. For this, the processor 440 may have access to aserver (e.g., the server 106) for sharing the ruleset, may request theserver to provide at least one ruleset selected by a user, and mayreceive at least one ruleset from the server. The received ruleset maybe stored in the memory 430.

In operation 903, the electronic device 101 may verify whether an inputfor a permission change is detected. The input for the permission changeis generated by a user, and the processor 440 may detect the input forthe permission change by detecting an input for an object (e.g., abutton) defined for modification in a screen which displays the ruleset.For example, the permission change may include at least one of changeand deletion of content for an action or trigger.

Upon detecting the input for the permission change, in operation 905,the electronic device 101 may perform a procedure for the permissionchange. Specifically, the processor 440 may verify content of apermission change, which is intended by a user, a target ruleset, and atarget action or trigger, may generate a message for requesting for thepermission change, and thereafter may transmit the message to the server106. Thereafter, upon receiving a positive response for the permissionchange, the processor 440 may display a screen for reporting to the userthat the permission change is accepted. Upon receiving a negativeresponse for the permission change, the processor 440 may display ascreen for reporting that the permission change is not accepted.

In operation 907, the electronic device 101 may determine whether atrigger is detected. In other words, the processor 440 may verifywhether there is an event conforming to a trigger defined in theruleset. In this case, the trigger may be an independent trigger, atrigger involving an action, or a trigger involving a ruleset.

Upon detecting the trigger, in operation 909, the electronic device 101may execute the ruleset. In other words, the processor 440 may executeat least one action included in the ruleset corresponding to thetrigger. In this case, when the action is defined as the trigger, theprocessor 440 may determine again the occurrence of the triggeraccording to the execution of the action, and may execute a plurality ofactions consecutively. The processor 440 may transmit informationindicating a result of executing the action to the server 106.

FIG. 10 is a flowchart for generating a ruleset in an electronic deviceaccording to various embodiments of the disclosure. A method ofoperating the electronic device 102 is exemplified in FIG. 10.Specifically, FIG. 10 exemplifies a method of creating a ruleset in theelectronic device 102 and sharing the ruleset via the server 106.

Referring to FIG. 10, in operation 1001, the electronic device 102 mayhave access to a site or execute an application. Herein, the site may beprovided by a server (e.g., the server 106) for sharing a ruleset, andmay provide a function for generating the ruleset. That is, theelectronic device 102 may execute a tool for generating the ruleset.Through the site or the application, the electronic device 102 may writea ruleset including at least one trigger and at least one action.

In operation 1003, the electronic device 102 may generate the ruleset,and may configure a permission. In this case, the electronic device 102may generate the ruleset on the basis of an action and triggerpre-stored in the server 106 or newly-defined action and triggerinformation. In addition, the electronic device 102 may configure thepermission of the ruleset. In other words, the electronic device 102 maylimit a permission of modification and deletion for the ruleset.

In operation 1005, the electronic device 102 may determine whether thegenerated ruleset is a trigger. The electronic device 102 may determinethe ruleset as the trigger or an independent ruleset. If the ruleset isthe trigger, a new ruleset or a subsequent action after the execution ofthe ruleset may be executed. If the ruleset is not the trigger, theremay be no subsequent action.

If the ruleset is the trigger, in operation 1007, the electronic device102 may designate a next ruleset or action. That is, if it is determinedthat the ruleset is the trigger, since the ruleset generated inoperation 1003 is a trigger of a next-step action or ruleset, thenext-step action or ruleset may be designated. If the next step is notdesignated, operations based on consecutive connectors may stop.

If the ruleset is not the trigger, in operation 1009, the electronicdevice 102 may generate the action and configure the permission. Inother words, the electronic device 102 may generate at least one actionincluded in the ruleset.

In operation 1011, the electronic device 102 may determine whether theaction is the trigger. That is, the electronic device 102 may determinethe action as the trigger or the independent action. If the action isthe trigger, a next action or ruleset may start after the execution ofthe action. If the action is not the trigger, there may be no more nextaction.

If the action is the trigger, in operation 1013, the electronic device102 may designate a next ruleset or action. That is, if it is determinedthat the action is the trigger, since it is possible to define the nextaction or ruleset, the next ruleset or action may be designated.

In operation 1015, the electronic device 102 may share the rulesetthrough the site or the application. That is, the electronic device 102may transmit at least one ruleset including at least one action and atleast one trigger to the server 106. Accordingly, the server 106 mayrelease a ruleset generated by the electronic device 102 through thesite or the like, and another device (e.g., the electronic device 101)may download the ruleset.

FIG. 11 is a flowchart for executing a ruleset and changing a permissionin an electronic device according to various embodiments of thedisclosure. A method of operating the electronic device 101 isexemplified in FIG. 11. Specifically, FIG. 11 exemplifies a method ofdownloading a ruleset in the electronic device 101 and requesting theserver 106 to change a permission.

Referring to FIG. 11, in operation 1101, the electronic device 101 maydownload a ruleset. The electronic device 101 may be coupled to theserver 106 by having access to the site or executing the application,and may download a ruleset including a trigger and/or an action.Thereafter, in operation 1103, the electronic device 101 may determinewhether modification and/or detection of the action is required. Inorder to optimize the ruleset in an operating environment, modificationand/or deletion of any action may be required. Accordingly, a user ofthe electronic device 101 may determine whether modification and/ordeletion is required for each action. If the modification and deletionis unnecessary for the action, the procedure may end.

In operation 1105, the electronic device 101 may verify whethermodification and/or detection of the action is possible. In other words,the electronic device 101 may determine whether there is a permission ofmodification and/or deletion for a corresponding action.

If it is determined in operation 1105 that there is a permission formodifying an action and/or a permission for deleting the action, or ifan approval of a creator is verified in operation 1109, in operation1111, the electronic device 101 may modify or delete the action.

If the electronic device 101 has the permission of modification and/ordeletion for the action, in operation 1111, the electronic device 101may optimize the ruleset to the operating environment by modifyingand/or deleting the action. However, if the permission is limited sothat the modification and/or deletion of the action is not free, theelectronic device 101 may request the electronic device 102 to changethe permission.

In operation 1107, the electronic device 101 may determine whether totransmit to the electronic device 102 a signal which requests for apermission change to modify or delete the action. The electronic device101 may end an operation for modifying or deleting the action inresponse to the determining not to transmit the signal. The electronicdevice 101 may transmit a signal for requesting for the permissionchange in response to the determining to transmit the signal. The signalmay be transmitted from the electronic device 101 to the electronicdevice 102 via the server 106.

In operation 1109, the electronic device 101 may receive a signalindicating a creator's response related to a ruleset from the electronicdevice 102. The electronic device 101 may identify whether the creatorhas accepted the permission change on the basis of receiving of thesignal indicating the response of the creator.

FIG. 12A illustrates a signal flow for a permission change according tovarious embodiments of the disclosure. A signal exchange among theelectronic device 101, the electronic device 102, and the server 106which process a permission change requested by the electronic device 101is exemplified in FIG. 12A.

Referring to FIG. 12A, in operation 1201, the electronic device 101 mayrequest the server 106 to change a permission for an action or ruleset.In other words, when a user requests for the permission change, theelectronic device 101 may transmit information on a ruleset and actionrequested to be modified, user information, information regarding therequested permission, or the like to the server 106.

For example, when the electronic device 101 executes a rulesetdownloaded from the server 106, as shown in a first screen 1210 of FIG.12B, a ruleset consisting of a trigger 1211, an action & trigger 1212,and an action 1213 may be displayed on the display 160. In this case,icons 1214 to 1216 related to the action 1213 may be displayed.Specifically, the icon 1214 for a duration of validity, the icon 1215for modification, and the icon 1216 for deletion may be displayed.Although not shown in FIG. 12B, according to a permission configurationof the creator, the electronic device 101 may display whether it has apermission according to visual effects (e.g., a presence/absence ofshading, a color change, indication addition, or the like) or objectattribute control (e.g., inactivation) to the icons 1214 to 1216. Insome embodiments, if there is no permission of deletion for the action1213, the icon 1216 for deletion may be shaded, and may be set to aninactive state.

Upon instructing a management corresponding to the permission not ownedby the electronic device 101, the electronic device 101 may report thatthe user does not have the permission. For example, as shown in a secondscreen 1220 of FIG. 12B, if there is a touch input for the icon 1216 fordeletion, a pop-up window 1222 for inquiring whether to request for thepermission change may be displayed on the display 160 of the electronicdevice 101. Accordingly, the user may instruct the request for thepermission change. The pop-up window 1222 may disappear when ‘no’ isselected. In addition, the electronic device may transmit a permissionchange request to the server 106 when ‘yes’ is selected.

In operation 1203, the server 106 transmits a notification for thepermission change request to the electronic device 102. That is, theelectronic device 102 may receive request information regarding thepermission change of the electronic device 101 from the server 106. Uponreceiving the request information from the server 106, the electronicdevice 102 may display a screen for inquiring a creator of whether toapprove this. In some embodiments, as shown in FIG. 12C, a pop-up window1232 for inquiring whether the request is approved may be displayed onthe display 160 of the electronic device 102. In the pop-up window 1232,a user of the electronic device 102 may select approval or rejection forthe request of the permission change. The user of the electronic device102 may select ‘no’ if the request of the permission change is rejected,and may select ‘yes’ if the request of the permission change isapproved. In this case, a duration of validity for the permission changemay be set at the same time of approval. For this, the user of theelectronic device 102 may select an object 1234 for determining anadditional duration of validity. Upon selecting the object 1234 forsetting the duration of validity, a validity duration list 1242 may bedisplayed. Accordingly, the user may select a desired duration ofvalidity, or if there is no desired duration of validity, may directlyinput it through a ‘user input’ region. If the duration of validity isset, the permission change is maintained only during the duration ofvalidity, and if the duration of validity expires, the permission may berestored to a previous state of being changed. Otherwise, if the user ofthe electronic device 102 selects ‘yes’ without the setting of theduration of validity, a permission may be changed without a limitationin the duration of validity in the permission configuration of theruleset.

In operation 1205, the electronic device 102 may transmit a response forthe permission change request to the server 106. The electronic device102 may transmit to the server 106 a message for reporting a creator'sintention verified through the interface of FIG. 12C. In thisembodiment, it is assumed that the permission change request isapproved. According to an embodiment, the server 106 may change thepermission by updating stored permission information of a user of theelectronic device 101. Specifically, the server 106 may change contentregarding the pre-stored permission. For example, if a request formodifying an action having only a reading permission is approved, theserver 106 may consider the permission change for the electronic device101 by excluding a limitation of a permission for modification anddeletion of a pre-stored corresponding action. According to anotherembodiment, the server 106 may not update information regarding apermission owned by the user of the electronic device 101. For example,a process for the permission change in the server 106 may be complete bytransmitting data (e.g., a token, a password for the permission change)required for the permission change to the electronic device 101.

In operation 1207, the server 106 may transmit a permission changeresponse to the electronic device 101. Accordingly, the electronicdevice 101 may display an additional pop-up to the display 160 accordingto approval response information received from the server 106. Forexample, as shown in a third screen 1250 of FIG. 12D, icons 1252 forreporting the permission change may be displayed on an upper end of theicons 1214 to 1216 for functions having the changed permission. Foranother example, the electronic device 101 may display content of thechanged permission as a list. If a creator rejects the permissionchange, the electronic device 101 may display a pop-up window reportingthat the permission change request has rejected on the display 160, ormay not change the screen to express that there is no permission change.

As described with reference to FIG. 12A to FIG. 12D, a permission forprocessing (e.g., reading, modifying, deleting, or the like) of anaction or trigger included in a ruleset may be limited, and a permissionmay be given by an approval of the creator. Accordingly, since itbecomes difficult for the user to change the ruleset indiscriminately,it is possible to protect rights of the creator. Further, when theruleset is distributed in a state of being created, there may be anadvertising effect for the creator. Furthermore, in the presence of anaction for advertisement among actions of the ruleset, there is alimitation in modification or deletion of an action for advertisement bylimiting the permission, thereby also having an advertising effect.

In the embodiment described with reference to FIG. 12C, the screen mayinclude the object 1234 for setting the duration of validity.Accordingly, the user of the electronic device 102 may set the durationof validity for the permission change, or may change the permissionwithout the duration of validity. According to another embodiment, theobject 1234 for setting the duration of validity may be excluded fromthe screen. In this case, a process of approving the permission changemay not include the procedure for setting the duration of validity.

The ruleset according to various embodiments of the disclosure mayinclude actions executed by a plurality of devices, instead of beingconstructed of only actions executed by one device. Hereinafter,embodiments related to the ruleset associated with the plurality ofdevices will be described.

FIG. 13A illustrates a signal exchange for executing a rulesetassociated with a plurality of devices according to various embodimentsof the disclosure. A signal exchange for consecutive actions of a deviceA 1310 and a device B 1320 is exemplified in FIG. 13A.

Referring to FIG. 13A, in operation 1301, the device A 1310 may transmitstate information to the server 106. The state information may betransmitted in an event driven manner or may be transmitted cyclically.A transmission cycle of the state information may be determined by auser. If the cycle is short, the server may be overloaded due toexcessive information reception, and if the cycle is long, a responsemay be late or a trigger may be lost even if the trigger occurs.Therefore, a user preferably selects any transmission cycle suitable foran operating environment. By receiving the state information, the server106 may determine whether the trigger occurs. According to anembodiment, the device A 1310 may be a front door 1312 of FIG. 13B. Thefront door 1312 may recognize door open or close information through asensor. The front door 1312 may transmit, to the server 106, stateinformation indicating closing during the door is closed, and maytransmit state information indicating opening during the door is open.Since an opening trigger does not occur during the informationindicating closing is received from the front door 1312, the server 106may do not perform any operation. When the user opens the door to enter,the first door 1312 may transmit the state information indicatingopening to the server 106, and the server 106 may determine that thetrigger occurs. According to another embodiment, the device A 1310 maybe a blind 1314 of FIG. 13C. The blind 1314 may measure brightness of ahospital room through an illumination sensor. In this case, the stateinformation may include an illumination value. Therefore, the server 106may determine that the trigger occurs, when state information indicatinga lux value received from the blind 1314 indicates a value less than anybrightness.

In operation 1303, the server 106 may transmit a command for an action Ato the device A 1310. In other words, the server 106 may determine thetrigger occurrence on the basis of the state information received fromthe device A 1310, and may provide control to execute the action A onthe basis of the trigger by transmitting information regarding theaction A. In case of no trigger occurrence, the server 106 may nottransmit any information to the device A 1310. However, in case of beingused only as the trigger as in the first door 1312 of FIG. 13B,operation 1307 may be skipped. However, any other embodiments may bepossible within a range which does not limit the scope of thedisclosure. For example, the action A may include content of changing adoor lock of the front door 1312 from automatic to manual. For anotherexample, as shown in FIG. 13B, the action A may include content ofdisplaying a logo of a manufacturer on a display of a refrigerator 1322for 3 seconds. For another example, in another embodiment according toFIG. 13C, the action A may include content of allowing the blind 1314 tohave intermediate brightness. That is, when an illumination measured inthe hospital room is less than or equal to a specific lux value whichcan be determined as being dark, the action A may include content ofallowing the blind 1314 to have the intermediate brightness.

In operation 1305, the device A 1310 may execute the action A. In otherwords, the device A 1310 may receive information regarding the action A,and may perform a corresponding operation. For example, as shown in FIG.13B, according to action information received from the server 106, therefrigerator 1322 may display the logo of the manufacturer on thedisplay for 3 seconds. In addition, in another embodiment shown in FIG.13C, according to action information received from the server 106, theblind 1314 may perform a motion function in a downward direction, or mayoperate to change the brightness of the hospital room to theintermediate brightness through other functions.

In operation 1307, the device A 1310 may transmit a completion reportmessage to the server 106. By transmitting the completion reportmessage, it may be reported to the server 106 that information regardingthe action A has been successfully received from the device A 1310 andthe action A has been performed. For example, as shown in FIG. 13B, therefrigerator 1322 may display the logo on the display for 3 seconds, andmay transmit a completion report message based thereon to the server106. In addition, in another embodiment according to FIG. 13C, the blind1314 may control the brightness, and may transmit a completion reportmessage based thereon to the server 106.

In operation 1309, the server 106 may transmit a command for an action Bto the device B 1320. That is, the server 106 may verify the executionof the action A which corresponds to an action and a trigger, uponreceiving the completion report message from the device A 1310 in theprevious operation. Accordingly, the server 106 may instruct to executethe action B, by transmitting information regarding the action B. Forexample, as shown in FIG. 13B, the device B 1320 may be the refrigerator1322. The server 106 may know that the action A which displays the logowill be performed upon receiving the completion report message from therefrigerator 1322, and thus may transmit information of an action whichdisplays a family drawing board. For another example, in anotherembodiment according to FIG. 13C, the device B 1320 may be a light bulb1324. The server 106 may receive the completion report message from theblind 1314, and thus may instruct the light bulb 1324 to execute theaction B.

In operation 1311, the device B 1320 may execute the action B. That is,the device B 1320 may receive information regarding the action B, andmay perform a corresponding operation. For example, as shown in FIG.13B, the refrigerator 1322 may perform an operation of displaying afamily drawing board. For another example, in another embodimentaccording to FIG. 13C, the light bulb 1324 may perform an operation ofemitting warm light with intermediate brightness.

In operation 1313, the device B 1320 may transmit the completion reportmessage to the server 106. By transmitting the completion reportmessage, it may be determined that the action B has been performed inthe device B 1320 via the server 106. For example, in an embodimentaccording to FIG. 13B, the refrigerator 1322 may transmit the completionreport message to the server 106. For another example, in anotherembodiment according to FIG. 13C, the light bulb 1324 may transmit thecompletion report message to the server 106.

As described with reference to FIG. 13A to FIG. 13C, consecutiveconnector services associated with a plurality of devices may beprovided. For this, as a preliminary operation, information regardingdevices for performing actions for the consecutive connector servicesmay be provided to the server 106. In other words, the electronic device101 may transmit a device list to the server 106. Accordingly, theserver 106 may recognize devices belonging to a network to which a rulewill be applied. Herein, the device list may include at least one ofidentification information of each device, a device type, and an address(e.g., an IP address) for communication. Accordingly, the devices andthe server 106 may be in a state in which communication can be performedwith each other. The electronic device 101 may transmit the device listto the server 106 during a procedure of registering an account, during aprocedure of receiving a ruleset, or when an event occurs (e.g., whenthere is a change in information regarding devices). The device list maybe provided once or twice. For example, when the device list istransmitted again after the device list is transmitted during theprocedure of registering the account, the device list transmitted againmay have a meaning of verifying validity of the device list.

As described with reference to FIG. 13A to FIG. 13C, consecutiveconnector services associated with a plurality of devices may beprovided. In this case, similarly to the aforementioned procedure ofmodifying the ruleset, the ruleset associated with the plurality ofdevices may be modified. For example, referring to FIG. 13C, accordingto a ruleset 1350 of a hospital A, a heater is configured to operatewhen a temperature of a hospital room is less than or equal to 23degrees Celsius. Thus, the user may modify the ruleset 1350 similarly toa modified ruleset 1360 so that it is optimized for an environment forapplying the ruleset. Specifically, the electronic device 101 may add anaction of an air conditioner 1362. Accordingly, the modified ruleset1360 may provide control such that the temperature of the hospital roomalways remains in 23 to 28 degrees Celsius. In addition, the electronicdevice 101 may modify an action of an air cleaner 1352 of the ruleset1350 to an action having content from a ‘clean mode’ to a ‘perfect cleanmode’. Accordingly, a hospital room of an asthma patient can bemaintained to have more fresh air.

Further, according to other embodiments, the electronic device 101 maychange a permission of an action or trigger. For example, in thehospital room of the asthma patient, quality of the air may be a factordirectly sensitive to the life. Accordingly, in order to increasesafety, the electronic device 101 may be capable of changing apermission of a ruleset which blocks modification and deletion of anaction of the air cleaner 1352.

FIG. 14A illustrates a signal exchange for controlling consecutiveactions based on a user's act in an electronic device according tovarious embodiments of the disclosure. A signal exchange between theelectronic device 101 and the server 106 according to a user's act isexemplified in FIG. 14A.

Referring to FIG. 14A, in operation 1401, the electronic device 101 mayreceive ruleset information from the server 106. The electronic device101 may have access to a site or execute an application, and may selecta ruleset to be used. The server 106 may transmit the rulesetinformation based on a user's selection to the electronic device 101.For example, as shown in FIG. 14B, the ruleset may include a ruleset1410 for an exercise or a ruleset 1420 for a diet.

In operation 1403, the electronic device 101 may transmit act startinformation to the server 106. Since it is a consecutive operation basedon a user's act, start information of a first act may be required to beinput by the user. The act start information may be generated byselecting a specific object on a screen displayed on a display of theelectronic device 101. When the ruleset 1410 for the exercise or theruleset 1420 for the diet are used as shown in FIG. 14B, an objecthaving a meaning such as ‘exercise start’ or ‘diet start’ or the likemay be used.

In operation 1405, the server 106 may transmit information indicating anact A to the electronic device 101. That is, the server 106 maydetermine that a trigger has occurred upon receiving user's startinformation. Therefore, the server 106 may transmit informationregarding the act A to the electronic device 101 of the user, and mayallow the user to start the act A. For example, as shown in FIG. 14B,the act A may be repetition of 3 sets of an exercise 1. In this case,the electronic device 101 may display ‘repetition of 3 sets of theexercise 1’ on the display 160.

In operation 1407, the electronic device 101 may verify an input forcompletion of the user's act A. Since an action is defined as a user'sact, the electronic device 101 cannot directly know the completion ofthe act A. Therefore, the user may input the complete of the act A tothe electronic device 101, and the electronic device 101 may verify thecompletion. However, according to another embodiment, the electronicdevice 101 may determine the completion of the user's act A by using atleast one sensor such as a camera or the like. In this case, operation1407 may be replaced with an operation of detecting the completion ofthe act A.

In operation 1409, the electronic device 101 may transmit a completionreport message of the act A to the server 106. The input of thecompletion of the user's act A may be received by the electronic device101, and may not be received by the server 106. Therefore, theelectronic device 101 may allow the server 106 to determine whether atrigger occurs, by transmitting the completion report message to theserver 106.

In operation 1411, the server 106 may transmit information indicating anact B to the electronic device 101. That is, the server 106 maydetermine that the trigger has occurred upon receiving the completionreport message of the user's act A. Therefore, the server 106 maytransmit information on the act B of the electronic device 101 of theuser, and may allow the user to start the act B. For example, as shownin FIG. 14B, the act B may be a one-minute break. In this case, theelectronic device 101 may display ‘one-minute break’ on the display 160.

In operation 1413, the electronic device 101 may verify an input forcompletion of the user's act B. The user may complete the act B, and mayinput complete information of the act B to the electronic device 101.Thus, the electronic device 101 may verify the completion of the act B.In the embodiment according to FIG. 14B, the electronic device 101 maydisplay an object (e.g., a button) for the input of the completion onthe display 160, and may receive the user's input.

In operation 1415, the electronic device 101 may transmit the completioninformation of the act B to the server 106. That is, since theelectronic device 101 only receives the input for completion informationof the user's act B, the electronic device 101 may allow the server 106to determine whether a trigger has occurred by transmitting again thereceived completion input to the server 106.

In operation 1417, the server 106 may transmit information indicating anact C to the electronic device 101. That is, completion information ofthe act B may be a trigger of the act C, and information regarding theact C may be transmitted to the electronic device 101. For example, asshown in FIG. 14B, the act C may be repetition of 3 sets of an exercise2. In this case, the electronic device 101 may display ‘repetition ofthe 3 sets of the exercise 2’ on the display 160.

In operation 1419, the electronic device 101 may verify the completionof the user's act C. The user may input the completion of the act C tothe electronic device 101, and if there is a completion input basedthereon, the electronic device 101 may verify the completion of the actC.

In operation 1421, the electronic device 101 may transmit a completionreport message of the act C to the server 106. That is, the electronicdevice 101 only receives the user's completion input, and the server 106may determine whether a trigger has occurred by transmitting thereceived completion input to the server 106.

In operation 1423, the server 106 may transmit information indicating anact D to the electronic device 101. That is, this may be a case wherethe completion of the act C is a trigger of the act D. Therefore, theserver 106 may transmit information regarding the act D and control theelectronic device 101 such that content of the act D is displayed on thedisplay 160. Thus, the user can execute the act D. For example, as shownin FIG. 14B, the act D may be a one-minute break.

In operation 1425, the electronic device 101 may verify a completioninput of the user. The user may input the completion of the one-minutebreak to the electronic device 101. Therefore, the electronic device 101may verify the completion of the one-minute break.

In operation 1427, the electronic device 101 may transmit a completionreport message of the act D to the server 106. Since the electronicdevice 101 only receives the completion input of the user, the server106 may determine whether a trigger has occurred by transmitting thereceived completion input to the server 106.

FIG. 15A is a flowchart for controlling an action based on whether adevice exists in a server according to various embodiments of thedisclosure. A method of operating the server 106 is exemplified in FIG.15A. Specifically, FIG. 15A exemplifies a method of ignoring acorresponding action when there is no device for a specific action.

Referring to FIG. 15A, in operation 1501, the server 106 may verify adevice to be controlled to perform a corresponding action. That is, theserver 106 may control consecutive actions associated with differentdevices, and may verify which type of a device is used to execute anaction to be performed next. That is, the server 106 may verify whichdevice is used to perform a specific action. For example, when using aruleset 1510 as shown in FIG. 15B and FIG. 15C, if an action in which aheater 1512 is set to a temperature of 23 degrees Celsius is performed,an action for controlling a blind 1514 to intermediate brightness may betriggered as a next action. In this case, the server 106 may verify theblind 1512 as a device to be controlled.

Thereafter, in operation 1503, the server 106 may verify whether thereis a device for performing a corresponding action. Upon downloading theruleset from the server 106 or registering an account, the electronicdevice 101 may transmit information of devices belonging to networks, towhich the ruleset is applied, to the server 106. Therefore, the server106 may have information of the devices, and may determine whether thereis a required device. For example, a device list received by the server106 from the electronic device 101 and a type of a device for performinga corresponding action may be compared. The comparison may be possiblesince information regarding a type of a device required in the executionof the ruleset is pre-stored in the server and the list information ofthe user's device is received when the ruleset is downloaded. Forexample, the blind 1514 exists in case of an environment of FIG. 15B.However, in case of an environment of FIG. 15C, the blind 1514 does notexist. As shown in FIG. 15B, there may be no problem when the blind 1514exists. However, as shown in FIG. 15C, in the absence of the device, ifit is not controlled to perform a next action by ignoring this, asituation where the execution of the ruleset stops may occur due to theabsence of the device. Therefore, operation 1509 may be performed asfollows for a case where there is no device for performing acorresponding action.

In the presence of the device, in operation 1506, the server 106 maydetermine whether the device is capable of performing a function of acorresponding action. For example, in case of FIG. 15B, althoughbrightness control of the blind 1514 is included in content of theaction, the blind 1514 may not support the brightness control. In thiscase, similarly to a case where the device does not exist, a situationwhere the execution of the ruleset stops may occur. Therefore, operation1509 may be performed as follows for a case where the device does notsupport a function required to execute a corresponding action.

When the function of the corresponding action can be performed, inoperation 1507, the server 106 may control the device to execute thecorresponding action. That is, the server 106 may determine that thedevice for performing the corresponding action exists and supports afunction required to execute the action, and may control the device. Ifthe device exists and supports the function, there is no problem inperforming a corresponding action, and there is no case where theruleset itself does not operate but stops, the server 106 may controlthe device to perform an action of content designated content. Forexample, as shown in FIG. 15B, the ruleset is triggered by a motionsensor, and an action of the heater 1512 is executed, thereby requiringan action of the blind 1514. In this case, since the blind 1514 existsand supports a brightness control function, the action of the blind 1514may be executed.

In operation 1509, the server 106 may ignore a corresponding action.That is, the server 106 may skip the action and proceed to a nextaction. That is, the server 106 may provide control to execute the nextaction under the assumption that an action has been performed for a casewhere there is no device or there a device exists but does not support acorresponding function. In order to avoid a situation where theexecution of the ruleset stops since a specific action cannot beperformed, subsequent consecutive actions may be executed by ignoringthe action. Specifically, if there is no device for a correspondingaction, the server 106 may ignore the action. In addition, if there is adevice for the action but a function required for the action is notsupported, the server 106 may ignore the action. For example, as shownin FIG. 15C, if the blind 1514 does not exist, the server 106 may skipthe action and may provide control to execute a next action, i.e., anaction of a light bulb 1516. In addition, even if the blind 1514 existsbut does not support the brightness control function according to aspecific embodiment, the server 106 may provide control to execute anext action, i.e., an action of the light bulb 1516.

According to the aforementioned various embodiments, a connector serviceusing conditional actions executed consecutively may be provided. In theaforementioned embodiments, a device (e.g., the electronic device 102)which accepts a permission change and a device (e.g., the server 106)which manages a ruleset have been described as separate devices.However, according to another embodiment, the device which generates theruleset and the device which manages the ruleset may be the same device.In addition, the device which accepts the permission change of theruleset and the device which manages the ruleset may be the same device.For example, the electronic device 102 of the creator may perform thefunction of the server 106. In this case, in the aforementionedembodiments, a signal exchange between the electronic device 102 and theserver 106 may be understood as a signal exchange inside the electronicdevice 102, and a signal exchange between the server 106 and theelectronic device 101 may be understood as a signal exchange between theelectronic device 102 and the electronic device 101. Specifically,functions of the server 016 may be performed by the electronic device102, and in this case, a procedure of sharing a ruleset may be performedas shown in FIG. 16, and consecutive connector services may be performedas shown in FIG. 17.

FIG. 16 is a flowchart for requesting and downloading a ruleset betweenelectronic devices according to various embodiments of the disclosure. Amethod of operating the electronic devices 101 and 102 is exemplified inFIG. 16. Specifically, FIG. 16 exemplifies downloading of a ruleset ofthe electronic device 102 which may be the server 106 and the electronicdevice 101 of a user.

Referring to FIG. 16, in operation 1601, the electronic device 101 maytransmit to the electronic device 102 a request for a ruleset to bedownloaded. That is, through a ruleset list received from the electronicdevice 102, the electronic device 101 may select a ruleset to be usedand, for the selected ruleset, may request the electronic device 102 toprovide ruleset information. Before this, although not shown in FIG. 16,the electronic device 101 may have access to or log in the electronicdevice 102. The electronic device 101 which requests for the access mayrequire a login procedure or the like through a user's account. In thelogin procedure of the electronic device 101, the electronic device 102may store account information or the like of the electronic device 101.In addition, the electronic device 101 may input a list of devicescoupled to the electronic device 101 together with the login. Theelectronic device 102 which may be the server 106 may transmitinformation of a ruleset stored in the logged-in electronic device 101.That is, since the electronic device 102 may have a plurality ofrulesets stored therein due to uploading of ruleset creators, a list ofrulesets may be transmitted to the electronic device 101 to select aruleset to be used.

In operation 1603, the electronic device 102 may transmit informationregarding the requested ruleset to the electronic device 101. In otherwords, the electronic device 102 may specify which ruleset is theruleset requested by the electronic device 101 specifically through thereceived ruleset request information, and may allow the user of theelectronic device 101 to use the ruleset by transmitting informationregarding the requested ruleset to the electronic device 101.

FIG. 17 illustrates another signal exchange for executing a rulesetassociated with a plurality of devices according to various embodimentsof the disclosure. A signal exchange for consecutive actions of thedevice A 1310 and the device B 1320 is exemplified in FIG. 17. In theexample of FIG. 17, the electronic device 102 may be the server 106.That is, the electronic device 102 may store information regarding aruleset selected by a user of the ruleset and may play a role of theserver 106. For example, as shown in FIG. 13B or FIG. 13C, the rulesetinformation stored in the electronic device 102 may be a home ruleset1330 applicable in a home network and a hospital room ruleset 1350applicable in a hospital.

Referring to FIG. 17, in operation 1701, the device A 1310 may transmitstate information to the electronic device 102. The state informationmay be transmitted in an event driven manner or may be transmittedcyclically. A transmission cycle of the state information may bedetermined by a user. If the cycle is short, the server may beoverloaded due to excessive information reception, and if the cycle islong, a response may be late or a trigger may be lost even if thetrigger occurs. Therefore, a user preferably selects any transmissioncycle suitable for an operating environment. By receiving the stateinformation, the electronic device 102 may determine whether the triggeroccurs. According to an embodiment, the device A 1310 may be the frontdoor 1312 of FIG. 13B. The front door 1312 may recognize door open orclose information through a sensor. The front door 1312 may transmit, tothe server 106, state information indicating closing during the door isclosed, and may transmit state information indicating opening during thedoor is open. Since an opening trigger does not occur during theinformation indicating closing is received from the front door 1312, theelectronic device 102 may do not perform any operation. When the useropens the door to enter, the first door 1312 may transmit the stateinformation indicating opening to the electronic device 102, and theelectronic device 102 may determine that the trigger occurs. Herein, theelectronic device 102 may determine whether a trigger occurs on thebasis of self-stored ruleset information. According to anotherembodiment, the device A 1310 may be the blind 1314 of FIG. 13C. Theblind 1314 may measure brightness of a hospital room through anillumination sensor. In this case, the state information may include anillumination value. Therefore, the electronic device 102 may determinethat the trigger occurs, when state information indicating a lux valuereceived from the blind 1314 indicates a value less than any brightness.

In operation 1703, the electronic device 102 may transmit a command foran action A to the device A 1310. In other words, the electronic device102 may determine the trigger occurrence on the basis of the stateinformation received from the device A 1310, and may provide control toexecute the action A on the basis of the trigger by transmittinginformation regarding the action A. In case of no trigger occurrence,the electronic device 102 may not transmit any information to the deviceA 1310. However, in case of being used only as the trigger as in thefirst door 1312 of FIG. 13B, operation 1303 may be skipped. However, anyother embodiments may be possible within a range which does not limitthe scope of the disclosure. For example, the action A may includecontent of changing a door lock of the front door 1312 from automatic tomanual. For another example, as shown in FIG. 13B, the action A mayinclude content of displaying a logo of a manufacturer on a display ofthe refrigerator 1322 for 3 seconds. Alternatively, according tocontention of the created ruleset, content for displaying a logo ofanother competitor other than the manufacturer may be included. Foranother example, in another embodiment according to FIG. 13C, the actionA may include content of allowing the blind 1314 to have intermediatebrightness. That is, when an illumination measured in the hospital roomis less than or equal to a specific lux value which can be determined asbeing dark, the action A may include content of allowing the blind 1314to have the intermediate brightness.

In operation 1705, the device A 1310 may execute the action A. In otherwords, the device A 1310 may receive information regarding the action A,and may perform a corresponding operation. For example, as shown in FIG.13B, according to action information received from the electronic device102, the refrigerator 1322 may display the logo of the manufacturer onthe display for 3 seconds. In addition, in another embodiment shown inFIG. 13C, according to action information received from the electronicdevice 102, the blind 1314 may perform a motion function in a downwarddirection, or may operate to change the brightness of the hospital roomto the intermediate brightness through other functions.

In operation 1707, the device A 1310 may transmit a completion reportmessage to the electronic device 102. By transmitting the completionreport message, it may be reported to the electronic device 102 thatinformation regarding the action A has been successfully received fromthe device A 1310 and the action A has been performed. For example, asshown in FIG. 13B, the refrigerator 1322 may display the logo on thedisplay for 3 seconds, and may transmit a completion report messagebased thereon to the electronic device 102. In addition, in anotherembodiment according to FIG. 13C, the blind 1314 may control thebrightness, and may transmit a completion report message based thereonto the electronic device 102.

In operation 1709, the electronic device 102 may transmit a command foran action B to the device B 1320. That is, the electronic device 102 mayverify the execution of the action A which corresponds to an action anda trigger, upon receiving the completion report message from the deviceA 1310 in the previous operation. Accordingly, the electronic device 102may instruct to execute the action B, by transmitting informationregarding the action B. For example, as shown in FIG. 13B, the device B1320 may be the refrigerator 1322. The electronic device 102 may knowthat the action A which displays the logo will be performed uponreceiving the completion report message from the refrigerator 1322, andthus may transmit information of an action which displays a familydrawing board. For another example, in another embodiment according toFIG. 13C, the device B 1320 may be the light bulb 1324. The electronicdevice 102 may receive the completion report message from the blind1314, and thus may instruct the light bulb 1324 to execute the action B.

In operation 1711, the device B 1320 may execute the action B. That is,the device B 1320 may receive information regarding the action B, andmay perform a corresponding operation. For example, as shown in FIG.13B, the refrigerator 1322 may perform an operation of displaying afamily drawing board. For another example, in another embodimentaccording to FIG. 13C, the light bulb 1324 may perform an operation ofemitting warm light with intermediate brightness.

In operation 1713, the device B 1320 may transmit the completion reportmessage to the electronic device 102. By transmitting the completionreport message, the electronic device 102 may determine that the actionB has been performed in the device B 1320. For example, in an embodimentaccording to FIG. 13B, the refrigerator 1322 may transmit the completionreport message to the electronic device 102. For another example, inanother embodiment according to FIG. 13C, the light bulb 1324 maytransmit the completion report message to the server 106.

A term “module” used in the document includes a unit consisting ofhardware, software, or firmware, and may be interchangeably used with aterm such as a unit, a logic, a logical block, a component, a circuit,and the like. The “module” may be an integrally constructed component ora minimum unit or one part thereof for performing one or more functions.The “module” may be mechanically or electrically implemented, and mayinclude, for example, an Application-Specific Integrated Circuit (ASIC)chip, a Field-Programmable Gate Arrays (FPGAs), or a programmable-logicdevice, which is known or to be developed to perform certain operations.At least part of an apparatus (e.g., modules or functions thereof) ormethod (e.g., operations) according to various exemplary embodiments maybe implemented with an instruction stored in a computer-readable storagemedia (e.g., the memory 130). If the instruction is executed by one ormore processors (e.g., the processor 120), the one or more processorsmay perform a function corresponding to the instruction. Thecomputer-readable storage media may include a hard disk, a floppy disk,magnetic media (e.g., a magnetic tape), optical media (e.g., a CompactDisc-ROM (CD-ROM), a Digital Versatile Disc (DVD), magnetic-optic media(e.g., a floptical disk)), an internal memory, or the like. Theinstruction may include a code created by a compiler or a codeexecutable by an interpreter. The module or programming module accordingto various exemplary embodiments may further include at least one ormore constitutional elements among the aforementioned constitutionalelements, or may omit some of them, or may further include additionalother constitutional elements. According to various exemplaryembodiments, operations performed by a module, programming module, orother constitutional elements may be executed in a sequential, parallel,repetitive, or heuristic manner. At least some of the operations may beexecuted in a different order or may be omitted, or other operations maybe added.

In the aforementioned specific embodiments of the disclosure, acomponent included in the disclosure is expressed in a singular orplural form according to the specific example embodiment proposedherein. However, the singular or plural expression is selected properlyfor a situation proposed for the convenience of explanation, and thusthe various embodiments of the disclosure are not limited to a single ora plurality of components. Therefore, a component expressed in a pluralform can also be expressed in a singular form, or vice versa.

While the disclosure has been shown and described with reference tocertain preferred embodiments thereof, it will be understood by thoseskilled in the art that various changes in form and details may be madetherein without departing from the spirit and scope of the disclosure asdefined by the appended claims. Therefore, the scope of the disclosureis defined not by the detailed description thereof but by the appendedclaims, and all differences within equivalents of the scope will beconstrued as being included in the disclosure.

What is claimed is:
 1. An electronic device comprising: a communicationmodule; a memory storing instructions; and at least one processor,wherein the at least one processor is configured to: receive a rulesetincluding information regarding at least one action performed by theelectronic device and at least one condition for triggering the at leastone action from another electronic device via the communication module;execute the stored instructions to perform a function of the electronicdevice corresponding to the ruleset; and detect a user's input to verifycompletion of an act indicated by an action included in the ruleset,wherein the at least one action includes a specific function of aspecific application stored in the memory and executed by the at leastone processor and data based on the specific function of the specificapplication, wherein the ruleset includes at least one ruleset of whicha permission for at least one of reading, modification, and deletion islimited, and wherein the ruleset includes information regarding aplurality of actions executed each sequentially by a plurality ofdevices different from one another.
 2. The electronic device of claim 1,wherein the ruleset includes a first action designating execution of thespecific function and a trigger used as an execution condition of thefirst action, and wherein the first action is defined as an executioncondition of a second action.
 3. The electronic device of claim 1,wherein the ruleset includes a first sub-ruleset and a secondsub-ruleset, and wherein the first sub-ruleset is defined as anexecution condition of the second sub-ruleset.
 4. The electronic deviceof claim 1, wherein the at least one processor is configured to:transmit a first message requesting a change of the permission inresponse to a user's input instructing a process corresponding to thelimited permission; receive a second message approving the change of thepermission; and execute the stored instructions to perform the processinstructed by the user's input in response to the change of thepermission approved by the second message.
 5. The electronic device ofclaim 4, wherein the change of the permission includes a limitedduration of validity.
 6. The electronic device of claim 1, wherein theat least one processor is further configured to execute the storedinstructions to transmit information regarding the plurality of devicesto a server managing the ruleset.
 7. An electronic device comprising: acommunication module; a memory storing instructions; and at least oneprocessor configured to: transmit a ruleset including informationregarding at least one action performed by the electronic device and atleast one condition for triggering the at least one action to a firstelectronic device via the communication module, wherein the at least oneaction includes specific function of a specific application stored inthe memory and executed by the at least one processor and data based onthe specific function of the specific application, wherein the rulesetincludes at least one ruleset of which a permission for at least one ofreading, modification, and deletion is limited, and wherein the rulesetincludes information regarding a plurality of actions executed eachsequentially by a plurality of devices different from one another; anddetect a user's input to verify completion of an act indicated by anaction included in the ruleset.
 8. The electronic device of claim 7,wherein the at least one processor is further configured to execute thestored instructions to receive the ruleset from a second electronicdevice which has generated the ruleset via the communication module. 9.The electronic device of claim 8, wherein the at least one processor isconfigured to: receive a first message which requests for a change ofthe permission from the first electronic device; transmit a secondmessage which inquires whether the change of the permission is acceptedto the second electronic device; receive a third message which reportswhether the change of the permission is accepted from the secondelectronic device; and execute the stored instructions to transmit afourth message which reports whether the permission is changed to thefirst electronic device.
 10. The electronic device of claim 7, whereinthe at least one processor is configured to execute the storedinstructions to receive information regarding the plurality of devices.11. The electronic device of claim 10, wherein the at least oneprocessor is configured to: control a first device to perform a firstaction based on the ruleset; identify a second device corresponding to asecond action which uses the first action as an execution condition; andexecute the stored instructions to control the second device to performthe second action in response to the second device being identified. 12.The electronic device of claim 11, wherein the at least one processor isconfigured to: skip the second action in response to an absence of thesecond device; and execute the stored instructions to control a thirddevice, which is predetermined to execute a third action, to execute thethird action if the second action is a condition for executing the thirdaction.
 13. The electronic device of claim 7, wherein the at least oneprocessor is configured to execute the stored instructions to transmitthe ruleset to a server which manages the ruleset.
 14. The electronicdevice of claim 13, wherein the at least one processor is configured to:receive, from the server, a first message which inquires whether achange of the permission is accepted; and transmit, to the server, asecond message which reports whether the change of the permission isaccepted.
 15. An operation method of an electronic device, comprising:receiving a ruleset including information regarding at least one actionperformed by the electronic device and at least one condition fortriggering the at least one action from another electronic device via acommunication module; executing stored instructions to perform afunction of the electronic device corresponding to the ruleset, whereinthe at least one action includes specific function of a specificapplication stored in a memory and executed by at least one processorand data based on the specific function of the specific application, andwherein the ruleset includes at least one ruleset of which a permissionfor at least one of reading, modification, and deletion is limited;transmitting information regarding a plurality of actions executed eachsequentially by a plurality of devices included in the ruleset; anddetecting a user's input to which the electronic device verifiescompletion of an act indicated by an action included in the ruleset. 16.The operation method of claim 15, further comprising: transmitting afirst message requesting a change of the permission in response to auser's input instructing a process corresponding to the limitedpermission; receiving a second message approving a change of thepermission; and executing the stored instructions to perform the processinstructed by the user's input in response to the change of thepermission approved by the second message.
 17. The operation method ofclaim 16, further comprising: displaying at least one objects notifyingof the change of the permission.
 18. The operation method of claim 15,further comprising: transmitting, in response to the detection of theuser's input, a message notifying the completion of the act.